<?php

namespace App\Services;

use App\Models\FleaBanner;
use Illuminate\Support\Facades\DB;

class FleaBannerService extends BaseService
{
    protected $user;

    public function __construct()
    {
        $this->user = auth('user')->user();
    }

    /**
     * 获取用户发布的闲置列表
     * @Notes
     * @return array
     * @author ypp
     * @date 2021/3/6
     * @time 11:13
     */
    public function getFealBannerList(): array
    {
        //获取认证用户信息
        $user_info = auth('user')->user();
        $now       = strtotime(date('Y-m-d'));
        //DB::connection()->enableQueryLog();
        //查询的数据范围：物业端录入的数据和平台端录入的数据【在有效期内和长期的】 type:1物业端  2：平台端
        $list = FleaBanner::where(['is_show'=>1,'status'=>1])  //未删除和未禁用的状态
            ->where(function ($query) use ($now,$user_info) {
                $query->where([['start_time', '<=', $now], ['end_time', '>=', $now]])  //有效时间内
                ->OrWhere(['end_time' =>0]);  //长期的数据
            })
            ->where(function ($query) use ($now,$user_info) {
                $query->where(['estate_id' => $user_info['property_id'],'type' =>1])  //物业id
                ->OrWhere(['type' =>2]);  //平台录入的数据
            })
            ->orderBy('create_time', 'desc')->get();

       // $logs = DB::getQueryLog();                  // 获取查询日志
       // dd($logs);       // 即可查看执行的sql，传入的参数等等
        return $list ? $this->format($list) : $this->format_error('暂无公告');
    }



}
